Skip to content

Conversation

@Diaphteiros
Copy link
Contributor

What this PR does / why we need it:
Changes the way the release notes are generated.

We wanted to include renovate PRs into the release notes. I decided to first change the release note generation script from bash to golang, because the bash script was already hard to understand and modifying it further would just have made it more complex. Note that bash is still used to fetch the PR information (via the gh CLI) and dump it into a json file, which is then passed into the go script.

Noteworthy changes:

For reference, our release note template in PRs looks like this (using ' instead of backticks for escaping reasons):

'''<category> <audience>
<body>
'''
  • Release notes are now first sorted by category and then by audience.
  • The category types have been expanded to the following ones:
    • breaking
    • feature
    • bugfix
    • refactor
    • doc
    • chore
  • The categories will appear in the order shown above. Categories without release notes will not show up.
  • Only release note blocks are taken into account, not PR titles or anything else. PRs without release note blocks won't show up in the release notes.
  • Each release note shows the PR and its author at the end.
  • Bot PRs are not automatically filtered out anymore. They will show a gear icon instead of an author name.
    • They still have to contain a release note block in order to show up in the release notes, which is currently not the case for renovate PRs. We either have to configure renovate to include the block in its PRs or adapt the coding in order to show the renovate PRs.

Which issue(s) this PR fixes:
None

Special notes for your reviewer:
Expand the sections below for an example of what the new release notes look like.
Note that the example data comes from the ClusterProvider Gardener repo (mostly) and the PR numbers don't fit for this repo.

Example (raw)
# Changelog


## 🚨 Breaking

#### [USER]
-   Refactored the operator to fit our common api. **(#72, @Diaphteiros)**

## 🚀 Features

#### [OPERATOR]
-   It is now possible to overwrite any field of the generated shoot manifest by using `ClusterConfig` resources. **(#68, @Diaphteiros)**
-   The Gardener OIDC Extension is now enabled for all created shoots. **(#53, @Diaphteiros)**

## 🐛 Bugfixes

#### [USER]
-   Fixed a bug in the `AccessRequest` controller that could cause a panic when referencing a `Cluster` resource that does not have a corresponding Gardener shoot. **(#68, @Diaphteiros)**

## 🔧 Chores

#### [DEPENDENCY]
-   Some renovate update. **(#74, ⚙️)**

## ➕ Other

#### [DEPENDENCY]
-   automatic golang version update with renovate **(#59, @guewa)**
#### [OPERATOR]
-   The Gardener ClusterProvider now provides error messages in form of conditions on the different resources. **(#72, @Diaphteiros)**
#### [USER]
-   Updated the README. **(#56, @Diaphteiros)**
Example (rendered)

Changelog

🚨 Breaking

[USER]

🚀 Features

[OPERATOR]

🐛 Bugfixes

[USER]

🔧 Chores

[DEPENDENCY]

➕ Other

[DEPENDENCY]

[OPERATOR]

[USER]

Release note:

Changed the release note generation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants